/*************************************************************************
	> File Name: port.h
	> Author: 
	> Mail: 
	> Created Time: 2018年11月06日 星期二 15时44分25秒
 ************************************************************************/

#ifndef _PORT_H
#define _PORT_H
enum result
{
    FALSE = 0,
    TRUE,
};

/**
*函数名：OpenUART
*函数功能：打开串口设备文件
*函数参数：port 串口设备名
*函数返回值：打开成功返回该设备文件描述符，失败返回0
*/
int OpenUART(char *port);

/**
*函数名：SetUART
*函数功能：设置串口
*函数参数：fd 串口设备文件描述符
           speed 波特率
           flow_ctrl 数据流控制
           databits 数据位
           stopbits 停止位
           parity 校验位
*函数返回值：设置成功成功返回1，失败返回0
*/
int SetUART(int fd,int speed,int flow_ctrl,int databits,int stopbits,int parity);

/**
*函数名：UARTRecv
*函数功能：读取串口数据
*函数参数：fd 串口设备文件描述符
           rcvBuf 用于接受数据
           dataLen 数据长度
*函数返回值：读取成功返回读取的数据长度，失败返回0
*/
int UARTRecv(int fd,char *rcvBuf,int dataLen);

/**
*函数名：UARTSend
*函数功能：向串口发送数据
*函数参数：fd 串口设备文件描述符
           rcvBuf 要发送的数据
           dataLen 数据长度
*函数返回值：发送成功返回发送的数据长度，失败返回0
*/
int UARTSend(int fd,char *sendBuf,int dataLen);

/**
*函数名：UARTClose
*函数功能：关闭串口
*函数参数：fd 串口设备文件描述符
*函数返回值：无
*/
void UARTClose(int fd);

/**
*函数名：InitGPS
*函数功能：启动GPS
*函数参数：fd 串口设备文件描述符
*函数返回值：启动成功返回1，失败返回0；
*/
int InitGPS(int fd);

#endif
